namespace test {

	public class T {
		static ulong[] values = {
			1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048,
			4096, 8192, 16384, 32768, 65536, 131072,
			262144, 524288, 1048576, 2097152, 4194304, 8388608,
			16777216, 33554432, 67108864, 134217728, 268435456,
			536870912, 1073741824, 2147483648, 4294967296,
			8589934592, 17179869184, 34359738368, 68719476736,
			137438953472, 274877906944, 549755813888, 1099511627776,
			2199023255552, 4398046511104, 8796093022208,
			17592186044416, 35184372088832, 70368744177664,
			140737488355328, 281474976710656, 562949953421312,
			1125899906842624, 2251799813685248, 4503599627370496,
			9007199254740992, 18014398509481984, 36028797018963968,
			72057594037927936, 144115188075855872, 288230376151711744,
			576460752303423488, 1152921504606846976,
			2305843009213693952, 4611686018427387904,
			9223372036854775808
		};
		public static int Main() {
			int i;
			ulong val = 1;
			ulong val17 = 131072;
			ulong val33 = 8589934592;
			ulong val39 = 549755813888;
			ulong val47 = 140737488355328;
			ulong val55 = 36028797018963968;

			for (i = 0; i < values.Length; ++i) {
				if (val != values [i])
					return i+1;
				val *= 2;
			}
			if (val33 != values [33])
				return 1;
			if (val39 != values [39])
				return 2;
			if (val47 != values [47])
				return 3;
			if (val55 != values [55])
				return 4;
			if (val17 != values [17])
				return 5;

			return 0;
		}
	}
}
